package com.woniuxy.venueservice.service;


import com.baomidou.mybatisplus.extension.service.IService;
import com.woniuxy.core.util.PageInfo;
import com.woniuxy.venuedao.model.VenueInfo;
import com.woniuxy.venuemodel.dto.UserLookVenueDto;
import com.woniuxy.venuemodel.dto.VenueLoginDto;
import com.woniuxy.venuemodel.form.UpdateVenueStateForm;
import com.woniuxy.venuemodel.param.*;

import java.io.IOException;
import java.util.List;

/**
 * <p>
 * 场馆表 服务类
 * </p>
 *
 * @author 冉杰
 * @since 2024-01-15
 */
public interface VenueInfoService extends IService<VenueInfo> {

    void register(VenueRegisterParam param);

    VenueLoginDto login(VenueLoginParam param);

    void updateVenueImage(UpdateVenueImageParam param) throws IOException;

    void refine(RefineParam param);

    void checkOldPass(String oldPass, Integer venueId);

    void updatePass(UpdateVenuePassParam param);

    void updateVenueAddress(UpdateVenueAddressParam param);

    void disableVenue(UpdateVenueStateForm form);

    void enableVenue(UpdateVenueStateForm form);

    VenueLoginDto byId(Integer venueId);

    PageInfo<UserLookVenueDto> userLookAllVenue(Integer pageNum, Integer pageSize, String address, String venueName);

    PageInfo<UserLookVenueDto> adminLookAllVenue(Integer pageNum,Integer pageSize,Integer venueState, Integer authState, String venueName);

}
